function distributeApproximately(total, groups) {
// 验证输入
if (typeof total !== 'number' || typeof groups !== 'number' ||
total < 0 || groups <= 0 ||
!Number.isInteger(total) || !Number.isInteger(groups)) {
throw new Error('输入必须是非负整数，且组数必须是正整数');
}

// 基本分配：每个组至少能分到的数量
const base = Math.floor(total / groups);
// 余数：需要额外分配的数量
const remainder = total % groups;

// 创建分配结果数组
const distribution = [];

// 前remainder个组多分配1个，其余组分配base个
for (let i = 0; i < groups; i++) {
distribution.push(i < remainder ? base + 1 : base);
}

return distribution.join(' - ');
}
